AWS Backup VSSスナップショットが有効の場合でも、VSS非対応のEC2 Windowsや別のOSはバックアップされます
困っていた内容
AWS BackupのWindows Volume Shadow Copy Services(以降、VSS)を有効にしてバックアップを取得する際(静止点ありのバックアップ)、VSSがサポートされていないアプリケーションをもつWindowsやOSがLinuxのEC2は、静止点なしでのバックアップ処理されますでしょうか。
結論
AWS BackupでWindows VSSを有効化した場合でも、静止点なしのバックアップは実行されます。
ドキュメントには、以下の記載があります。
ステータスが Completed のバックアップジョブは、VSS 部分が成功することを保証するものではありません。VSS の組み込みはベストエフォート方式で行われます。次の手順を実行して、バックアップがアプリケーション整合性があるのか、クラッシュコンシステントであるのか、失敗しているのかを判断してください。 引用
VSS オプションを有効にした場合であっても、VSSが実行できないEC2に関しては通常のバックアップ(EC2 CreateImage API)が実行されます。
EC2 Linuxに対してバックアップジョブが実行された場合、元々 VSS の概念がないため、上記の通り通常のバックアップが実行されます。
VSSを実行するための要件を満たしていないEC2 Windowsに対して、VSSが有効なバックアップジョブが実行された場合、VSS自体は失敗しますが通常のバックアップは実行されます。
AWS BackupでVSSスナップショットする条件
AWS BackupでEC2のVSSスナップショットを取得するには、以下の条件があります。
- EC2のアプリケーションがVSSに対応している
- EC2に特定の権限をもったIAMロールがアタッチされている
- EC2がマネージドインスタンス( AWS Systems Managerで管理可能)である
- EC2にVSSコンポーネントがインストール済み
AWS BackupでVSSスナップショットする前提条件や手順の詳細は、以下が参考になります。
VSSスナップショット取得の流れは、AWS Backupでバックアップが開始されると、Systems Manager Run CommandでEC2に対して、SSMドキュメントのAWSEC2-CreateVssSnapshot
を実行して取得されます。
実際に試してみた
オンデマンドでのバックアップで試してみます。
AWSマネジメントコンソールでAWS Backupから、[オンデマンドバックアップ]をクリックします。
リソースタイプをEC2に変更し、インスタンスを選択後、[Windows VSS]にチェックをするだけです。
バックアップ結果は、[バックアップジョブ]で確認できます。
AWS BackupでWindows VSSを有効化した場合、VSSがサポートされていないアプリケーションを持つEC2 WindowsやEC2 Linuxは、バックアップされました。
ただし、ジョブステータスは、完了
と問題ありで完了
の2パターン確認できました。
① バックアップのステータスが完了
EC2 LinuxやマネージドインスタンスではないWindowsの場合、ステータスが完了
になります。
バックアップ詳細にもエラー文等はありませんでした。
② バックアップのステータスが問題ありで完了
OSがWindowsかつマネージドインスタンスの場合、ステータスが問題ありで完了
になります。
これは、ドキュメントにも記載があります。
ステータスが Completed with issues の場合、VSS 操作が失敗したため、クラッシュコンシステントバックアップだけが成功したことを示します。このステータスにはポップオーバーメッセージ "Windows VSS Backup Job Error encountered, trying for regular backup" も表示されます。 引用
バックアップ詳細を確認すると、VSSスナップショットを取得する前提条件にも記載しましたが、EC2にVSSコンポーネントがインストールされていないとエラーが表示されていました。
マネージドインスタンスのため、Systems Manager Run Commandの実行履歴にもVSSスナップショットに失敗していることが確認できました。
AWSEC2-CreateVssSnapshot
が失敗していますね。
Run Commandの実行履歴詳細ページには、失敗していますが、AWS BackupによってAWSEC2-CreateVssSnapshot
が実行されたことが確認できます。
ステータスが問題ありで完了
の場合でも通常のバックアップ処理できていることが確認できました。